// pages/consultation/form/form.js
const https = require('../../../utils/https.js')
const user = require('../../../utils/user')
const config = require('../../../utils/config')
Page({

  /**
   * 页面的初始数据
   */
  data: {
    form: {
      describe: '',
	    images: []
    },
    files: []
  },
  changeInput(e) {
    this.data.form[e.currentTarget.dataset.name] = e.detail.value
  },
  back() {
    wx.navigateBack({
      delta: 1
    })
  },
  save() {
	  if (this.data.form.describe.length < 20) {
		  wx.showToast({
        title: '请输入不少于20字的病情描述',
        icon: 'none', // error loading none
        mask: true, // 是否显示透明蒙层，防止触摸穿透
        duration: 1000
		  })
		  return
	  }
	  if (this.data.form.images.length < 1) {
      wx.showToast({
        title: '请上传报告单或患处照片',
        icon: 'none', // error loading none
        mask: true, // 是否显示透明蒙层，防止触摸穿透
        duration: 1000
      })
      return
	  }
	  // this.data.files.forEach(item => {
		//   this.data.form.images.concat(item.url)
	  // })
    https.post('/api/consultation/create', this.data.form).then((res) => {
      if (res.code == 0) {
        setTimeout(() => {
          this.back()
        }, 1500)
        wx.showToast({
          title: '提交成功',
          icon: 'none', // error loading none
          mask: true, // 是否显示透明蒙层，防止触摸穿透
          duration: 1000
        })
        return
      }
      if (res.msg) {
        wx.showToast({
          title: res.msg,
          icon: 'none', // error loading none
          mask: true, // 是否显示透明蒙层，防止触摸穿透
          duration: 1000
        })
      }
    })
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {
    if (options.imgSrc) {
      var url = decodeURIComponent(options.imgSrc)
      this.setData({
        files: this.data.files.concat([ {url: url} ]),
        'form.images': this.data.form.images.concat([url])
      })
    }
    this.setData({
      selectFile: this.selectFile.bind(this),
      uplaodFile: this.uplaodFile.bind(this)
    })
  },
  chooseImage: function (e) {
    wx.chooseImage({
      sizeType: ['original', 'compressed'], // 可以指定是原图还是压缩图，默认二者都有
      sourceType: ['album', 'camera'], // 可以指定来源是相册还是相机，默认二者都有
      success: function (res) {
		
      }
    })
  },
  previewImage: function(e){
    wx.previewImage({
      current: e.currentTarget.id, // 当前显示图片的http链接
      urls: this.data.files // 需要预览的图片http链接列表
    })
  },
  selectFile(files) {
    console.log('files', files)
    // 返回false可以阻止某次文件上传
  },
  uplaodFile(files) {
    const that = this
    // 文件上传的函数，返回一个promise
    return new Promise((resolve, reject) => {
      files.tempFilePaths.forEach(tempFilePath => {
        wx.uploadFile({
          url: config.base_url + '/api/upload',
          filePath: tempFilePath,
          name: 'image',
          header: {
            Authorization: 'Bearer '+user.getData('access_token')
          },
          formData: {},
          success (res){
            const resData = JSON.parse(res.data)
            // console.log(res.data)
            if (resData.code == 0) {
              that.data.form.images = that.data.form.images.concat([resData.data.path])
              resolve({urls: [resData.data.path]})
            } else {
              wx.showToast({
                title: '上传失败！',
                icon: 'none', // error loading none
                mask: true, // 是否显示透明蒙层，防止触摸穿透
                duration: 1000
              })
            }
          }
        })
      })

      // setTimeout(() => {
      //   resolve({urls: ['https://p11.douyinpic.com/aweme/1080x1080/2e73c00041e2f625373cd.jpeg?from=2956013662']})
      //   // reject('some errorsss')
      // }, 1000)
    })
  },
  uploadError(e) {
    console.log('upload error', e.detail)
  },
  uploadSuccess(e) {
    console.log('upload success', e.detail)
  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function () {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function () {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function () {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function () {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function () {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function () {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage: function () {

  }
})